perm filename RANDOM[ROB,SYS] blob
sn#523604 filedate 1980-07-14 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00014 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00003 00002 Random notes about the new FACIL manual
C00004 00003 .IODEVICE( DEV,IOS,|Descrptive Name|)
C00005 00004 .IODEVICE( IOP,110,|167 High Speed Channel|)
C00009 00005 .IODEVICE( LPT,124,|Line printer and interface|)
C00010 00006 .IODEVICE( C1,|140,144|,|Foonly C1 Channel|)
C00016 00007 TTL IOBus Interface:
C00018 00008 The TTL IOBus:
C00023 00009 The TTL IOBus Extension:
C00028 00010 KL-10 IO DEVICES:
C00036 00011 The KL's TTL IOBUS
C00037 00012 The IMP (Intergallactic Message Prestidigitator) Interface
C00038 00013 The XGP interface
C00039 00014 The Video Intensity Map
C00040 ENDMK
C⊗;
Random notes about the new FACIL manual
document (somwhat) all the devices (not just the I/O Bus devices)
document (somwhat) all the devices (not just the home-grown interfaces)
describe each device as a 'black box', decribing the inputs and outputs
in detail. Include connector type, as well as physical location.
Think about decoupling the IO type descriptions from the devices. For example,
describe the TTL IOBus and its cabling seperately from the descrption of the
TTL IOBus Interface.
major sections:
P1 IOBus Devices
.IODEVICE( DEV,IOS,|Descrptive Name|)
INTRODUCTION:
CONO DEV,
CONI DEV,
DATAO DEV,
DATAI DEV,
PHYSICAL:
CONNECTION TYPE LOCATION DESCRIPTION
USAGE:
RELATED DOCUMENTS:
.IODEVICE( IOP,110,|167 High Speed Channel|)
INTRODUCTION:
The 167 High Speed channel was first built for use as a high-speed I/O
processor to accompany the DEC 166 Processor (a.k.a. the PDP-6). In
olden times, we used it to interface to the Librascope swapping disk.
We use it now to store samples from the TV digitizer into main memory.
CONO IOP,
18 400000 unused
19 200000 IOPRLY Early Response (also sets Data Missed)
20 100000 IOPNXM Parity Error
21:26 077000 Unused
27 000400 Init
28 000200 Ready
29 000100 I/O (0=in, 1=out)
30 000040 IOPMIS Data Missed
31 000020 IOPNXM Non-ex Mem
32 000010 IOPJDN Job Done
33:35 000007 PIA PI Channel
CONI IOP,
The bits in a CONI have the same meaning as in a CONO.
DATAO 110,[-WC,,MA]
This instruction gives a word count and starting memory address to the
167. Note that the you pass it the negative word count in the left
half, and the starting memory address in the right (NOT an IOWD word).
The 167 will then start reading (or writing) data to (or from) the
specified place in memory.
DATAI 110,[-WC,,MA]
This instruction reads a word count and starting memory address from the
167. This is used to find out how much data was actually read (or
written) in a requested tranfser.
PHYSICAL:
The 167 IO Processor occupies one standard DEC bay. It has both an
IO Bus port and a memory bus port. The TV digitizer shares the 167's
bay and backpanel, and is hardwired into the 167.
CONNECTION TYPE LOCATION DESCRIPTION
DEC IOBusIn Std DEC IOBus A01:A08 DEC Level IOBus
DEC IOBusOut Std DEC IOBus A16:A09 DEC Level IOBus
IOP MemBus Std DEC MEMus D01:D04,F01:F04 Origin of the 167 Membus
USAGE:
A typical transfer to get the IOP to transfer a bunch of data into main
memory would include a CONO to set the PI channel for interrupt and
direction of transfer, a DATAO to tell the 167 where to read (or write)
the data, a CONI to get the status of the transfer, and a DATAI to find
out how many word were actually transferred.
CONO IOP,IOPCHN
DATAO IOP,[-Count,,BufAdr]
...and on interrupt...
CONI IOP,TAC
DATAI IOP,[wcma]
RELATED DOCUMENTS:
Since the TV interface is the only thing currently connected to the
167 IO Processor, refer also to documentation on the TV interface.
.IODEVICE( LPT,124,|Line printer and interface|)
INTRODUCTION:
The Analex line printer is old and tired. Happily, its days are
numberd, but for now, it is our only high-speed printer that knows the
SAIL character set. The interface is the standard DEC interface, as
supplied for the PDP6.
.IODEVICE( C1,|140,144|,|Foonly C1 Channel|)
INTRODUCTION:
(my words)
The Foonly C1 channel interfaces a DEC PDP-10 system to (up to) four
IBM-style block multiplexor channel devices. From our computer's point
of view, the C1 is a standard DMA-type device, with an IO Bus port, a
memory bus port, and the standard IO instructions. On the other side,
however, the C1 has the requisite signals to communicate with any device
that wants to talk to an IBM block multiplexor channel. At our
installtion, we use the C1 to interface to our Ampex disk system (which
uses DC830 controllers and DM330 disk drives).
In reality the C1 is essentially two identical devices, known to system as
C1A and C1B. They both share memory and IO busses, but that is about all
they share. Each channel interface has its own Z80 microcomputer to do
all of the magic.
(DWP's words from PM[C1,DWP]
The C1 Multiple Channel consists of from one to four simulated IBM
"block multiplexor" channels, each of which connects one or more
IBM-compatible I/O controllers to a PDP-10 system. The channels in a C1
share a common interface to the PDP-10 memory and I/O busses. Each
channel executes programs from PDP-10 memory which control the sending
of commands to the I/O controllers, the transfer of data between memory
and the controllers, and the processing of status information from the
controllers.
A channel operates as a "block multiplexor" in the IBM sense,
timesharing several channel programs, and switching among them whenever
a controller returns status containing Channel End but not Device End.
CONO C1, CONI C1, DATAO C1, DATAI C1,
See the related progamming manual (on the C1 UDP as C1:PM[C1,DWP], also
with the C1 documentation).
PHYSICAL:
The Foonly C1 Channel lives in its own rack. As noted, it has a memory
bus port, an IO Bus port, and two IBM-type channel interface cables.
CONNECTION TYPE LOCATION DESCRIPTION
C1 Membus std DEC membus
C1 IOBus std DEC IOBus
channel 1 IBM
channel 2 IBM
USAGE:
The C1 channel is easily the most complex IO device on the system, and
no effort is made here in descibing how to program it. (Perchance it is
because the author has no idea how to program it.) Refer to PM[C1,DWP]
(see below) if you really must know.
RELATED DOCUMENTS:
C1:DM.[C1,DWP] is the manual for the C1 diagnostic program.
C1:MM.[C1,DWP] provides the the Theory of Operation for the C1.
C1:PM.[C1,DWP] provides the the Programming Manual for the C1.
C1:ZM.[C1,DWP] tells how to make new Z80 microprogams for the C1.
DSKSER[S,SYS] contains the system code that WAITS uses to communicate with
the C1 channel.
TTL IOBus Interface:
The TTL IOBus Interface is the device that converts between DEC IO Bus
levels (0v to -3v) and standard TTL (0 to 5v). The TTL IOB Interface has
on its 'input' a standard DEC IO bus, brought in on the standard eight DEC
paddles (two Cajolet connectors would work on this device also). On the
'output' side, the TTL IOBus is brought out on three DEC paddles.
The interface in built up on a DEC H911 rack-mount *** and lives in the
Kluge Bay rack. It requires +5 and a -15 volt power supplies for its
TTL and level converter circuits.
CONNECTION TYPE LOCATION DESCRIPTION
DEC IOBusIn Std DEC IOBus AB29:AB32 DEC Level IOBus
DEC IOBusOut Std DEC IOBus AB25:AB28 DEC Level IOBus
TTL IOBusOut Std TTL IOBus A01,B01,A02 Origin of the TTL IOBus
The TTL IOBus:
Interfacing to DEC voltage levels is, at best, awkward and expensive.
To get around this problem, Ted Panofsky created the TTL IOBus, which
looks, tastes, and feels almost exactly like a DEC IO Bus, except that
the signal levels are all standard TTL.
Every TTL IOBus is implimented on five 26 conductor flat cables, typically named
'Cable1' through 'Cable5'.
There are two ways to connect to a TTL IOBus. The first (and cleaner
way) is via three standard DEC paddles. The mapping between cables and
paddles is as follows:
PaddleA: Cable1, Cable3
PaddleB: Cable2, Cable4
PaddleC: Cable5
The other way to connect to a TTL IOBus is with in line crimp-on flat
cable sockets. These connectors are cheap and can easily be crimped
onto the middle of an existing cable, but the overall connection is less
reliable than the DEC paddle connectors.
As it turns out, the way the signals are distributed among the five
cables provide some economies for some devices. Cable5 has only
interrupt-related signals on it, so if a given device is not an
interrupting device, it doesn't need Cable5 at all. Futhermore, if a
device ignores bits 0:11, it can dispense with Cable1, which carries
only those bits.
The signals on a TTL IOBus:
wire Cable1 Cable2 Cable3 Cable4 Cable5
01 ¬TTL IOB 00 ¬TTL IOB 12 ¬TTL IOB 24 ¬TTL IOS3(1) ¬TTL IOB PI 1
02 ¬TTL IOB 01 ¬TTL IOB 13 ¬TTL IOB 25 ¬TTL IOS4(1) unused
03 ¬TTL IOB 02 ¬TTL IOB 14 ¬TTL IOB 26 ¬TTL IOS5(1) ¬TTL IOB PI 2
04 ¬TTL IOB 03 ¬TTL IOB 15 ¬TTL IOB 27 ¬TTL IOS6(1) unused
05 ¬TTL IOB 04 ¬TTL IOB 16 ¬TTL IOB 28 ¬TTL IOS7(1) ¬TTL IOB PI 3
06 ¬TTL IOB 05 ¬TTL IOB 17 ¬TTL IOB 29 ¬TTL IOS8(1) unused
07 ¬TTL IOB 06 ¬TTL IOB 18 ¬TTL IOB 30 ¬TTL IOS9(1) ¬TTL IOB PI 4
08 ¬TTL IOB 07 ¬TTL IOB 19 ¬TTL IOB 31 ¬TTL DATAO CLR unused
09 ¬TTL IOB 08 ¬TTL IOB 20 ¬TTL IOB 32 ¬TTL DATAO SET ¬TTL IOB PI 5
10 ¬TTL IOB 09 ¬TTL IOB 21 ¬TTL IOB 33 ¬TTL IOB DATAI unused
11 ¬TTL IOB 10 ¬TTL IOB 22 ¬TTL IOB 34 ¬TTL CONO CLR ¬TTL IOB PI 6
12 ¬TTL IOB 11 ¬TTL IOB 23 ¬TTL IOB 35 ¬TTL CONO SET unused
13 unused unused ¬TTL IOB RESET ¬TTL IOB CONI ¬TTL IOB PI 7
Wires 14 through 26 are grounded. This is a good thing, for it interleaves ground
between each signal, and thus cuts down on crosstalk and other nasty things.
The TTL IOBus Extension:
The creation of the TTL IOBus made interfacing random things on the IO Bus
much easier, but some people are never satisfied. The TTL IOBus Extension
(also called just 'the IOBus Extension') makes interfacing simple devices
well nigh trivial. If you have an interface that can be built on one or two
DEC W943 double height wire wrap cards, then the TTL IOBus
Extension is for you.
Each TTL IOBus Extension will handle up to *** interfaces. The Extension
provides two slots for each interface, and brings all the required IOBus
signals to each card. The actual interconnect scheme is outlined below.
The TTL IOBus Extension is built out of a DEC H911 panel, and has a
TTL IOBus port.
Here are how the signals appear on the backplane of each slot. Note that
the only differnece between the high order and the low order slots are the
actual data bits; both slots have all the control information available to
them. The 'A' slot (the top one) is completely uncommitted (except for the
standard power and ground wirng at AT1, AA2, and AC2). This slot is most
often used for wiring between two pieces of an interface (if it takes two
cards to build it), or perhaps to connect to a cable which runs off to the
device being interfaced.
Low-order slot:
BA1 ¬EXT CONO CLR BA2 VCC
BB1 ¬EXT DATAO CLR BB2 ¬EXT I/O RESET
BC1 GND BC2 GND
BD1 ¬EXT CONO SET BD2 ¬EXT DATAO SET
BE1 ¬EXT CONI BE2 ¬EXT DATAI
BF1 ¬EXT IOB 18 BF2 ¬EXT IOB 27
BH1 ¬EXT IOB 19 BH2 ¬EXT IOB 28
BJ1 ¬EXT IOB 20 BJ2 ¬EXT IOB 29
BK1 ¬EXT IOB 21 BK2 ¬EXT IOB 30
BL1 ¬EXT IOB 22 BL2 ¬EXT IOB 31
BM1 ¬EXT IOB 23 BM2 ¬EXT IOB 32
BN1 ¬EXT IOB 24 BN2 ¬EXT IOB 33
BP1 ¬EXT IOB 25 BP2 ¬EXT IOB 34
BR1 ¬EXT IOB 26 BR2 ¬EXT IOB 35
BS1 ¬EXT PI 1 BS2 ¬EXT PI 2
BT1 GND BT2 ¬EXT PI 3
BU1 ¬EXT PI 4 BU2 ¬EXT PI 5
BV1 ¬EXT PI 6 BV2 ¬EXT PI 7
High-order slot:
BA1 ¬EXT CONO CLR BA2 VCC
BB1 ¬EXT DATAO CLR BB2 ¬EXT I/O RESET
BC1 GND BC2 GND
BD1 ¬EXT CONO SET BD2 ¬EXT DATAO SET
BE1 ¬EXT CONI BE2 ¬EXT DATAI
BF1 ¬EXT IOB 0 BF2 ¬EXT IOB 9
BH1 ¬EXT IOB 1 BH2 ¬EXT IOB 10
BJ1 ¬EXT IOB 2 BJ2 ¬EXT IOB 11
BK1 ¬EXT IOB 3 BK2 ¬EXT IOB 12
BL1 ¬EXT IOB 4 BL2 ¬EXT IOB 13
BM1 ¬EXT IOB 5 BM2 ¬EXT IOB 14
BN1 ¬EXT IOB 6 BN2 ¬EXT IOB 15
BP1 ¬EXT IOB 7 BP2 ¬EXT IOB 16
BR1 ¬EXT IOB 8 BR2 ¬EXT IOB 17
BS1 ¬EXT PI 1 BS2 ¬EXT PI 2
BT1 GND BT2 ¬EXT PI 3
BU1 ¬EXT PI 4 BU2 ¬EXT PI 5
BV1 ¬EXT PI 6 BV2 ¬EXT PI 7
KL-10 IO DEVICES:
Foonly C1 Disk Channel
Data Disc
Data Disc interface
DCA Scanner
167 High Speed Channel
CalComp Plotter
CalComp Plotter Interface
Xerox Graphics Printer
Xerox Graphics Printer Interface
Analex Line Printer
Analex Line Printer Interface
DEC DTE-10 front end interface
DEC 136 Data Controller
DecTape
DecTape Controller
MagTape
MagTape Controller
Video Switch
Video Distribution System (overview)
Cart
Cart Interface
Vending Machine
Vending Machine Interface
Auto Dialer
Auto Dialer Interface
IMP
IMP interface
TV Camera
TV Camera Interface
III processor
III Processor Interface
P1/P2 interrupter
ELF interface
Mappiplexor
Audio Switch overview
Audio Switch interface
KA-10 DEVICES:
BBN Pager
Paper Tape Punch
Paper Tape Reader
KA-10 Console Teletype
CalComp Plotter Interface
CalComp Plotter
Varian Plotter Interface
Varian Plotter
Xerox Graphics Printer Interface
Xerox Graphics Plotter
LATE, LAMENTED DEVICES:
"New" A/D Converter
"NEW" D/A Converter
630 LINE SCANNER (Channel A)
630 LINE SCANNER (Channel B)
MICROSWITCH KEYBOARD SCANNER
10/6 INTERFACE
PARALYSER INTERFACE (BIT SERIAL LINE FROM KIM)
TELEPHONE PAGING KLUDGE
MECHANICAL ARM
A/D CONVERTER
DISPLAY CONSOLE (III) KEYBOARDS
LIBRASCOPE DISK INTERFACE
P. PETIT'S IBM CHANNEL
SAMSON MUSIC BOX
SAMSON MUSIC BOX
SAMSON MUSIC BOX
SAMSON MUSIC BOX
PETIT'S CALENDAR CLOCK
NON-IO BUS DEVICES
Ampex DC330 Disk Controller
Ampex DM330 Disk Drive
ARM-10M
DEC MG-10
MICROSWITCH KEYBOARDS
MICROSWITCH KEYBOARD SERIALIZERS
LA-36 (P1 CTY)
ASR-35 (P2 CTY)
The KL's TTL IOBUS
The path of the KL TTL IO BUS is as follows:
TTL IOB Interface
Audio Switch
MicroSwitch Scanner
Video Switch
10/11 Interface
TTL IOB EXT Interface
IMP Interface (IMPterface)
Terminates at the old TV PAN-TILT device, (which is currently unused)
The IMP (Intergallactic Message Prestidigitator) Interface
ports:
TTL IOBus (ala ribbon cable connectors)
IMP cable
The XGP interface
The XGP interface lives on the P2 TTL IOBus. It's device code is
440. More on this at some future date.
(the following is taken from a random piece of paper fallen from somewhere)
----------
CABLE IN AB07
10,32
-12V 33 BD1
GND 06,35 AC2,BC2,AL2
VIDEO 27 BR2 Terminated via 470 ohm to ground
CUT/MRK 26 BN2 Terminated via 1.5K to -12V
RUN 28 BV2
SYNC 24 BJ2 Terminated via 1.5K to -12V
SUPLOUT 23 BF2
CUTIMMD 25 BL2 Terminated via 1.5K to -12V
PAPERLO 22 BD2 Terminated via 1.0K to -12V
SIGNALB 16 AF2
RETRACE 31 in series with 180 ohms to AJ1
----------
The Video Intensity Map
lives on the 11/45
talk to it via the ELF interface